package com.ruoyi.employee.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.employee.mapper.SsSchemeMapper;
import com.ruoyi.employee.domain.SsScheme;
import com.ruoyi.employee.service.ISsSchemeService;

/**
 * 社保方案Service业务层处理
 *
 * @author hango
 * @date 2025-10-13
 */
@Service
public class SsSchemeServiceImpl implements ISsSchemeService
{
    @Autowired
    private SsSchemeMapper ssSchemeMapper;

    /**
     * 查询社保方案
     *
     * @param id 社保方案主键
     * @return 社保方案
     */
    @Override
    public SsScheme selectSsSchemeById(Long id)
    {
        return ssSchemeMapper.selectSsSchemeById(id);
    }

    /**
     * 查询社保方案列表
     *
     * @param ssScheme 社保方案
     * @return 社保方案
     */
    @Override
    public List<SsScheme> selectSsSchemeList(SsScheme ssScheme)
    {
        return ssSchemeMapper.selectSsSchemeList(ssScheme);
    }

    /**
     * 新增社保方案
     *
     * @param ssScheme 社保方案
     * @return 结果
     */
    @Override
    public int insertSsScheme(SsScheme ssScheme)
    {
        ssScheme.setCreateTime(DateUtils.getNowDate());
        return ssSchemeMapper.insertSsScheme(ssScheme);
    }

    /**
     * 修改社保方案
     *
     * @param ssScheme 社保方案
     * @return 结果
     */
    @Override
    public int updateSsScheme(SsScheme ssScheme)
    {
        ssScheme.setUpdateTime(DateUtils.getNowDate());
        return ssSchemeMapper.updateSsScheme(ssScheme);
    }

    /**
     * 批量删除社保方案
     *
     * @param ids 需要删除的社保方案主键
     * @return 结果
     */
    @Override
    public int deleteSsSchemeByIds(Long[] ids)
    {
        // ★ 关键：保持 Long[]，与 Controller/Mapper/XML 一致，避免 String -> Long 类型不兼容
        return ssSchemeMapper.deleteSsSchemeByIds(ids);
    }

    /**
     * 删除社保方案信息
     *
     * @param id 社保方案主键
     * @return 结果
     */
    @Override
    public int deleteSsSchemeById(Long id)
    {
        return ssSchemeMapper.deleteSsSchemeById(id);
    }
}
